<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //对象里面的属性，在外边创建的话，也是对本省的对象操作，js更加灵活了
        let user={name:"唐玮"};
        user.age=22;
        console.table(user);

        //对象的追加(展开语法)
        // let student={name:"唐玮",age:22};
        // let people1={name1:"红彩夏",age1:25};
        // let people={...student,name1:"红彩夏",age1:25}
        //  let people2={...people1,...student}
        // console.table(people);
        // console.table(people2);

        //如果使用展开语法的话:如果属性重复的时候，后面的属性的值会覆盖前面的值。


        //解构语法
        let user11={name:"唐玮",age:20};
        let {name:n,age:a}={...user11};
        //let {name,age}={...user11} 也可以不用其他变量
        console.log(n,a);



        //对象结构是根据属性来的
        // let web={name:"唐玮",age:52};
        // let {age}=web;
        // console.log(age); //52


        //多层对象嵌套
        let tw={
            name:'唐玮',
            grade:{
                js:98,
                css:88
            }
        }
        let {name,grade:{js,css}}=tw; //多层解构grade:{js,css} ,按照对象的语法就行
        console.log(js);//98



        //解构的默认属性
        // let web={name:"唐玮",age:52};
        // let {age,url="www.baidu.com"}=web;
        // console.log(age,url);


        
        //
        function tw11(name,{sex,age}){
            console.log(name,sex,age);
        }
        
        tw11("唐玮",{sex:"男",age:22});

    </script>
</body>
</html>